System and method for reconstructing restored facial images from video

ABSTRACT

A system and method for performing a facial image restoration is described. The system includes an active appearance model component for fitting an active appearance model to a facial image found in each of a plurality of video frames, a registration component for registering each pixel of each facial image with comparable pixels of each of the other facial images, and a restoration component for producing a restored facial image from the facial images. The method includes fitting an active appearance model to a facial image found in each of a plurality of video frames, registering each pixel of each said facial image with comparable pixels of each of the other facial images, and producing a restored facial image from the facial images.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present patent application claims priority from provisional patent application Ser. No. 60/886,433, filed Jan. 24, 2007, the disclosure of which is hereby incorporated by reference in its entirety.

STATEMENT REGARDING GOVERNMENT INTERESTS

This invention was made with Government support under Contract No. 2005-IJ-CX-K060-GOVT awarded by the National Institute of Justice. The Government has certain rights in the invention.

BACKGROUND

The invention relates generally to a system and method for fitting an active appearance model to a face in frames of a video, registering each of the faces, and producing a restored facial image using the frames of the video.

Automatic facial recognition at a distance is becoming of greater importance in many real-world scenarios, such as, for example, law enforcement surveillance applications. Automatic facial recognition at a distance, however, has had some challenging aspects. Low image resolution and camera blur contribute to the inability in many instances to obtain accurate facial recognition.

In many surveillance systems, in which it is desirable to incorporate automatic face recognition, the subject is captured on videos. Known facial recognition algorithms work on still images, so facial recognition applications generally extract a single frame of the video with a suitable view of the face. In a sense, the known facial recognition applications use only a small portion of the information available in the video.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic view illustrative of a high-quality facial restoration system in accordance with an exemplary embodiment of the invention.

FIGS. 2( a) through 2(c) illustrate the use of landmark points in the active appearance model of the system of FIG. 1.

FIG. 3 illustrates the use of consecutive video frames and the use of landmark points in the active appearance model of the system of FIG. 1.

FIG. 4 is illustrative of a high-quality facial restoration system in accordance with another exemplary embodiment of the invention.

FIG. 5 is a schematic view of an exemplary super-resolution algorithm for use in the system of FIG. 4.

FIGS. 6( a) through 6(c) compare an original video frame against the output of a single frame through the system of FIG. 1 and the output of multiple frames through the system of FIG. 4.

SUMMARY

The present invention describes a system and a method that uses multiple frames of a video to produce restored facial images. The term “restored” is used herein to denote that the resulting facial image has greater clarity than any individual facial image from any of the multiple video frames.

One exemplary embodiment of the invention is a system for producing restored facial images from frames of a video. The system includes an active appearance model component for fitting an active appearance model to a facial image found in each of a plurality of video frames. The system also includes a registration component for registering each pixel of each said facial image with comparable pixels of each of the other facial images, and a restoration component for producing a restored facial image from the facial images.

Another exemplary embodiment of the invention is a method for producing restored facial images from frames of a video. The method includes fitting an active appearance model to a facial image found in each of a plurality of video frames, registering each pixel of each facial image with comparable pixels of each of the other facial images, and producing a restored facial image from the facial images.

These and other advantages and features will be more readily understood from the following detailed description of preferred embodiments of the invention that is provided in connection with the accompanying drawings.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

Embodiments of the invention, as described and illustrated herein, are directed to a system and a methodology that uses multiple frames of a video to produce restored facial images. With specific reference to FIG. 1, there is shown a facial reconstruction system 10. The system 10 includes a training database 12, a video input 18, an active appearance model within module 16, a registration module 24, a warping module 26, an averaging module 28, and a Wiener filter module 30.

The training database 12 includes two-dimensional and possibly three-dimensional facial images. The training database 12 is used to train an active appearance model (“AAM”). The training database 12 may be a publicly available one, such as, for example, the Notre Dame Biometrics Database Collection D (“Collection D”). The facial images from the training database 12 are used by an active appearance model training module 14 to construct a mathematical representation of the appearance and shape of the facial images in general. By “appearance” is meant the colorization and texture. This mathematical representation may be adjustable.

The first step in multi-frame restoration is registration. To combine frames, each frame must be mapped such that between a pair of frames x₂ is a function of x₁. This allows for conversion of the first image coordinates, x₁=(r₂, c₂), of a real object or scene point to the second image coordinates, x₂=(r₂, c₂). One approach to registration is to select a parameterized registration function that can accurately model the actual frame-to-frame motion, such as an AAM.

An AAM applied to facial images is a two-stage model of both facial shape and appearance designed to fit the faces of different persons at different orientations. The active shape sub-model describes the distribution of the locations of a set of landmark points. FIG. 2( a) show 33 landmark points that will be used in the registration of a series of facial images. Principle Components Analysis (PCA) and the training set of facial images are used to reduce the dimensionality of the shape space while capturing major modes of variation across the training set population.

The AAM active shape sub-model includes a mean face shape that is the average of all the facial shapes in the training set from the database 12 and a set of eigenvectors. The mean face shape is the canonical shape and is used as the frame of reference for an AAM active appearance sub-model. Each training set of facial images is warped to the canonical shape frame of reference.

Since each training set of facial images are warped to the canonical shape frame of reference, all of the facial images from the training set are presented as if they have the same shape. With shape variation removed, the variation in appearance of the facial images is modeled in the second stage, using PCA to select a set of appearance eigenvectors for dimensionality reduction.

The completely trained active appearance model of module 16 can produce facial images that vary continuously over appearance and shape. For the purpose of restoring facial images, the active appearance model of module 16 is fit to a new face as it appears in one of the video frames. This is accomplished by solving for the face shape and appearance parameters (eigen-coefficients) such that the model-generated face matches the face in the video frame. A Simultaneous Inverse Compositional (SIC) algorithm may, for example, be used to fit the new face to the one within the video frames.

Video input 18, which may include one or more video cameras or one or more still cameras set to automatically take a series of still photographs, obtain multiple frames of video (or still photographs), each to include a facial image of a subject. It should be appreciated that the video input 18 may be live or forensic video or still photographs. If the video or still photographs are analog-based, an analog-to-digital converter would be required prior to transmitting the frames. The output frames of the video input 18 are transmitted to a face detection module 20, which is used to detect the facial image. The detection may be done automatically or manually. An example of manual detection may include the use of a Graphical User Interface. An example of automatic detection may include a facial detection software package marketed by Pittsburgh Pattern Recognition of Pittsburgh, Pa.

For each frame and each detected face, a vector of shape parameters and a vector of appearance parameters are obtained. The AAM of module 16 receives the eigenvectors of facial shape and appearance from the active appearance model training module 14. Further, an AAM fitting module 22 determines the vectors of shape parameters and of appearance parameters. The vector of shape parameters control the shape of the face, while the vector of appearance parameters control the appearance of the face.

While shape parameters and appearance parameters must be estimated to fit the model to a new face, only the resulting shape parameters are used for registration. The AAM of module 16 provides the registration needed to align the face across the multiple video or still frames. The active shape sub-model portion of the AAM defines the 33 landmark positions in each frame (FIG. 2( a)). These landmark positions are the vertices of 49 triangles over the face shown.

The registration, accomplished by the registration module 22, of the face between any two frames may become a piecewise affine transformation or a spline transformation, with an affine transformation for each of the triangles defined by the corresponding triangle vertices. To avoid a discontinuity close to the edge of the faces, the registration of the face is augmented by extrapolating the set of facial landmarks to define an extended border region (FIG. 2( b)). As shown, 30 new landmarks have been positioned a fixed distance out from the estimated facial edges, forming 45 new triangles at the border. A blending mask (FIG. 2( c)) is used to combine the facial region of the multi-frame facial reconstructions with the non-facial (background) region of a single observed frame, thus provided a more natural, blended result for a viewer. The blending mask M is defined in a base frame that has a value of 1 inside the face region and fades to zero outside of that region linearly with distance to the face region. The blending mask M is used to blend a restored facial image I_(R) with a fill image I_(f) using: I(r,c)=M(r,c)I _(R)(r,c)+(1−M(R,c))I _(f)(R,c).

During the registration function, one of the multiple video (or still photographic) frames is chosen as a base frame L_(k). Since motion is occurring between the various frames, and the motion is generally fluid in a particular direction, a frame from the middle of all the frames L_(l) to L_(N) may be chosen as the base frame L_(k). A new frame of reference H_(k) is created from that base frame L_(k). The new frame of reference H_(k) has a greater pixel resolution than the base frame L_(k).

FIG. 3 illustrates registration of facial images in a series of video frames. Once a series of two or more video frames is registered, warping of the facial images is accomplished through the warping module 26. Registration information obtained from the active appearance model fitting module 22 is then used to warp each of the facial images of each of the input video (or still photographic) frames L_(l)-L_(N) to the new frame of reference H_(k).

The output from the warping module 26 is input to the averaging module 28, which averages all the warped video (or still photographic) frames. The averaging may be done by adding up, on a pixel-by-pixel basis, and dividing by the number of frames.

The output from the averaging module 28 is then input to the Wiener filter 30. The video frames that are initially input are formed by the imaging process from a continuous image of a scene that has been convolved with a Point Spread Function (PSF), sampled on an image grid, corrupted by additive white Gaussian noise, and quantized. The PSF is responsible for blur that needs to be reduced. The additive noise limits the ability to reduce the blur. A dominant source of noise is CCD electronic noise, which is well modeled as additive Gaussian with a flat spectrum.

With all image signals represented in the spatial frequency domain, if the transform original image is I_(i)(ω₁, ω₂), the Optical Transfer Function (OTF, the Fourier Transform of the PSF) is H(ω₁, ω₂) and the additive Gaussian noise signal is N(ω₁, ω₂), then the observed video frame is: G(ω₁,ω₂)=H(ω₁,ω₂)I(ω₁,ω₂)+N(ω₁,ω₂).

The Wiener filter 30 is a classic method for single image deblurring. It provides a Minimum Mean Squared Error (MMSE) estimate of I(ω₁, ω₂). With a non-blurred image given a noisy blurred observation G(ω₁, ω₂), and with no assumption made about the unknown image signal, the Wiener filter 30 is: I(ω₁,ω₂)=(H*(ω₁,ω₂))G(ω₁,ω₂)/|(H(ω₁,ω₂)|² +K). The parameter H*(ω₁, ω₂) is the complex conjugate of H(ω₁, ω₂), and the parameter K is the noise-to-signal power ratio, thus forming the MMSE Wiener filter. In practice, the parameter K is adjusted to balance noise amplification and sharpening. If parameter K is too large, the image fails to have its high spatial frequencies restored to the fullest extent possible. If parameter K is too small, the restored image is corrupted by amplified high spatial frequency noise. As K tends toward zero, and assuming H(ω₁, ω₂)>0, the Wiener filter approaches an ideal inverse filter, which greatly amplifies high-frequency noise: I(ω₁,ω₂)=G(ω₁,ω₂)/(H(ω₁,ω₂).

The effect of the Wiener filter 30 on a blurred noisy image is to (1) pass spatial frequencies that are not attenuated by the PSF and that have a high signal-to-noise ratio; (2) amplify spatial frequencies that are attenuated by the PSF and that have a high signal-to-noise ratio; and (3) to attenuate spatial frequencies that have a low signal-to-noise ratio.

The baseline multi-frame restoration algorithm works by averaging the aligned face region of consecutive video frames L_(l) to L_(N) and applying a Wiener filter to the result. The frame averaging reduces additive image noise and the Wiener filter deblurs the effect of the PSF. The Wiener filter applied to a time averaged frame can reproduce the image at high spatial frequencies that were attenuated by the PSF more accurately than a Wiener filter applied to a single video frame. By reproducing the high spatial frequencies more accurately, the restored facial image 40 will have higher effective resolution and greater clarity in detail. This is due to image noise at these high spatial frequencies being reduced through the averaging process. Each of N measurements corrupted by zero-mean additive Gaussian noise with a variance σ² gives an estimate of that value that has a variance of σ²/N. Averaging N registered and warped images reduces the additive noise variance and the appropriate value of K by a factor of 1/N.

Referring now specifically to FIG. 4, there is shown a facial reconstruction system 110. The system 110, like the system 10 (FIG. 1), includes a training database 12, video input 18, and an active appearance model within module 16, and each of these components operate similarly as in the system 10 described above. The system 110 further includes a super-resolution module 124 for producing a restored facial image 140.

In operation, the system 110 fits an active appearance model to a facial image in each frame. A set of a plurality of frames, for example, about N=10 consecutive frames, are then combined to produce a super-resolved image 140. In one possible embodiment, the image formation process, which includes face motion, camera PSF and sampling, is modeled for each frame. To solve for the super-resolved image 140, a cost function with an L₁-norm data fidelity component is defined and a Bilateral Total Variation regularization is used. A steepest descent search, using an analytic gradient of the cost function, yields the super-resolved facial image 140.

Super-resolution of the facial images into a restored facial image 140 is accomplished through an appropriate super-resolution algorithm 124, such as one similar to the one suggested by Farsiu et al. in “Fast and robust multiframe super-resolution,” IEEE Transactions on Image Processing, vol. 13, no. 10, pp. 1327-1344, October 2004.

Each of the N input frames, Y_(i) (where i is 1 through N) exists in a low-resolution frame of reference denoted L_(i). Such a frame of reference encapsulates the image size and active appearance model landmark points. A registration process allows us to warp images between frames of reference. For each L_(i), a corresponding high-resolution frame of reference H_(i), having greater pixel resolution than L_(i) in each dimension, is created. The super-resolution image 140 is solved for in the frame H_(k), where k=N/2.

To initialize the super-resolution algorithm 124, the initial super-resolved image 140 _(i) is created by warping the face region of each of the N input frames Y_(i) to the frame H_(k) and averaging. The warping scales up and aligns each facial image. The result is blended with the non-facial regions of the input image Y_(k) scaled up to frame H_(k). The super-resolution process uses an image formation model relating each of the input frames Y_(i) to an unknown super-resolution image, X, in frame H_(k). With specific reference to FIG. 5, an initial super-resolved image of a set of iteratively improved super-resolved images 140 ₁ to 140 _(N), shown generally as 140 _(i), is transmitted to an image formation model 142. The image formation model 142 accounts for face motion, camera blur, and detector sampling as it relates X to each Y_(i). Specifically, the appearance shape models 19 for each of the multiple frames 1 to N, shown generally as ASM 19 ₁ to ASM 19 _(N), are input to the image formation model 142, along with the camera blur, and the initial super-resolved image 140 _(i).

For each input frame 19 _(i), the registration operator F_(i) warps X from frame H_(k) to frame H_(i), which has twice the resolution of L_(i) but is aligned with Y_(i). Nearest-neighbor, bilinear, or any other interpolation may be used for the warping operation. The camera blur operator, H, is not dependent on variable i and applies the PSF within a high-resolution frame H_(i). Most installed surveillance cameras are challenged by determining a true PSF. The image formation model 142 assumes a Gaussian shaped PSF with hand selected width, σ. The sampling operation of the detector is represented by the sparse matrix D that extracts every other pixel in each dimension, converting from frame H_(i) to L_(i), the frame of reference for the input frame Y_(i). If V_(i) represents additive pixel intensity noise, the complete linear image formation process is then: Y _(i) =DHF _(i) X+V _(i).

The output Y_(i) is then input to the Data Fidelity module 146, which determines the data fidelity cost and the gradient of this cost with respect to the super-resolved image pixel values. The data fidelity cost J_(DF)(X), as defined below, is the L₁ norm of the difference between the model of the observations and the actual observations, plus a regularization term Ψ(X). One optimizing algorithm that may be used for determining the super-resolved image X is:

$\overset{n}{\underset{i = 1}{J_{DF}(x)}} = {\sum{{{{{DHF}_{i}X} - Y_{i}}}.}}$ The L₁ norm is used in the Data Fidelity module 146 for robustness against incorrect modeling assumptions and registration errors.

Concurrently, the initial super-resolved image 140 _(i) is transmitted to a regularization module 150, which uses a Bilateral Total Variation (BTV) for inhibiting a solution tending toward degenerate super-resolved images. The BTV cost function is:

${\Psi(X)} = {\sum\limits_{l = {- P}}^{P}\;{\sum\limits_{m = {- P}}^{P}\;{\alpha^{{m} + {1}}{{{X - {S_{x}^{l}S_{y}^{m}X}}}_{1}.}}}}$ Here, S^(l) _(x) and S^(m) _(y) are operators that shift the image in the x and y direction by l and m pixels. With BTV, the neighborhood over which absolute pixel difference constraints are applied can be larger, with P>1, than for Total Variation (TV). The size of the neighborhood is controlled by parameter P and the constraint strength decay is controlled by α (0<α<1).

To solve for the super-resolution image 140, X is first initialized to the initial image 140 ₁ as described above. The initial image 140 ₁ is transmitted to the image formation module 142 and the regularization module 150. The image formation module 142 outputs a result to the Data Fidelity module 146. The Data Fidelity module 146 outputs an analytic gradient of the data fidelity cost function 148 _(i), and the regularization module 150 outputs an analytic gradient of the regularization cost function 152 _(i). These outputs 148 _(i), 152 _(i) are input to the iterative optimization module 154 _(i). A steepest descent search using a step size β=0.01 and a fixed number of iterations, such as, for example, 30 iterations, is used:

$X_{n + 1} = {X_{n} - {B\left\{ {{\sum\limits_{i = 1}^{n}\;{F_{i}^{T}H^{T}D^{T}\mspace{14mu}{{sign}\left( {{{DHF}_{i}X_{n}} - Y_{i}} \right)}}} + {\underset{l = {- P}}{\overset{P}{\lambda\sum}}\;{\sum\limits_{m = {- P}}^{P}{{\alpha^{{m} + {l}}\left( {I - {S_{y}^{- m}S_{x}^{- l}}} \right)}{{{sign}\left( {X_{n} - {S_{x}^{l}S_{y}^{m}X_{n}}} \right\}}.}}}}} \right.}}$

When the observed video is color, the super-resolution processing is applied to the luminance component only. The initial image is converted to the NTSC color space (YIQ), and the luminance (Y) component is computed for all input frames. The super-resolved luminance result is combined with the chrominance components from the initial image.

Referring to FIGS. 6( a) through 6(c), there is shown a comparison of an original video frame (FIG. 6( a)) with enhanced video frames. FIG. 6( b) illustrates the results of a Wiener filter on a single video frame. FIG. 6( c) illustrates the results of super-resolution utilizing the super-resolution algorithm 124 on a plurality of consecutive video frames. It is clear that the clarity of the facial images shown in FIGS. 6( b) and 6(C) incrementally improves over FIG. 6( a).

While the invention has been described in detail in connection with only a limited number of embodiments, it should be readily understood that the invention is not limited to such disclosed embodiments. Rather, the invention can be modified to incorporate any number of variations, alterations, substitutions or equivalent arrangements not heretofore described, but which are commensurate with the spirit and scope of the invention. Additionally, while various embodiments of the invention have been described, it is to be understood that aspects of the invention may include only some of the described embodiments. Accordingly, the invention is not to be seen as limited by the foregoing description, but is only limited by the scope of the appended claims. 

1. A system for producing restored facial images from frames of a video, comprising: an active shape component for fitting an active shape model to a facial image found in each of a plurality of digital video frames; a registration component for registering each location within a facial region of each said facial image with a corresponding location in any of the other facial images; and a restoration component for producing a restored facial image from the facial images.
 2. The system of claim 1, wherein the active shape component comprises: a video input module for providing a plurality of video frames; a face detection module adapted to detect a face in each of the plurality of video frames; and a fitting module for determining facial image model parameters such that the model closely resembles the face in each of the plurality of video frames.
 3. The system of claim 1, wherein said restoration component comprises a super-resolution algorithm.
 4. The system of claim 3, wherein the super-resolution algorithm comprises: an image formation model (IFM) which uses an active shape model for each of the plurality of video frames for producing IFM facial images; and a data fidelity model which uses actual facial images from each of the plurality of video frames to compare to the IFM facial images, said data fidelity model including a cost function.
 5. The system of claim 4, comprising a regularization model for inhibiting high spatial frequency distortion, said regularization model including a second cost function.
 6. The system of claim 1, wherein said restoration component comprises: a warping module for taking an output from the registration component to warp each of the facial images of each of the plurality of video frames to a new frame of reference having a greater pixel resolution than the pixel resolution of the plurality of video frames; an averaging module for averaging each of the warped facial images on a pixel by pixel basis; and an image restoration algorithm for producing a restored facial image from the averaged facial images.
 7. The system of claim 6, wherein the image restoration algorithm comprises a Wiener filter.
 8. The system of claim 6, wherein the new frame of reference has a pixel resolution two times greater than the pixel resolution of the plurality of video frames.
 9. A computerized method for producing restored facial images from frames of a video, comprising: receiving a plurality of digital video frames containing facial images; fitting an active shape model to a facial image found in each of the plurality of video frames; registering each image location of each said facial image with the corresponding image location of each of the other facial images; and producing a restored facial image from the facial images that has a resolution.
 10. The method of claim 9, wherein said fitting an active appearance model comprises: accessing a database of facial images; and constructing a generalized mathematical representation of the appearance and the shape of the facial images from the database.
 11. The method of claim 10, wherein the generalized mathematical representation is adjustable.
 12. The method of claim 9, wherein the fitting an active appearance model comprises: detecting a face in each of the plurality of video frames; and producing facial image model parameters such that the facial image model closely resembles the face in each of the plurality of video frames.
 13. The method of claim 9, wherein said producing a restored facial image comprises utilizing a super-resolution algorithm.
 14. The method of claim 13, wherein the super-resolution algorithm comprises: an image formation model (IFM) which uses an active shape model for each of the plurality of video frames for producing IFM facial images; and a data fidelity model which uses actual facial images from each of the plurality of video frames to compare to the IFM facial images, said data fidelity model including a cost function and a cost function gradient.
 15. The method of claim 14, comprising regularizing to inhibit high spatial frequency distortion.
 16. The method of claim 9, wherein said producing a restored facial image comprises: a warping module for taking an output from the registration component to warp each of the facial images of each of the plurality of video frames to a new frame of reference having a greater pixel resolution than the pixel resolution of the plurality of video frames; an averaging module for averaging each of the warped facial images on a pixel by pixel basis; and an image restoration algorithm for producing a restored facial image from the averaged facial images.
 17. The method of claim 16, wherein the image restoration algorithm comprises a Wiener filter.
 18. The method of claim 16, wherein the new frame of reference has a pixel resolution two times greater than the pixel resolution of the plurality of video frames. 